home *** CD-ROM | disk | FTP | other *** search
/ Amiga Magazin: Amiga-CD 1996 March / Amiga-CD 1996 #3.iso / demos / organiser2.0 / organiser-gepackt / org2demo.dms / org2demo.adf / Installiere Organiser < prev    next >
Text File  |  1996-01-12  |  52KB  |  2,020 lines

  1. ; $VER: Digita Organiser Installer Script 7/4/95
  2. ; By Mark Jackson
  3. ; German Language
  4. ;
  5. ; Works for Full version
  6. ; This section contains the Text strings for translation and
  7. ; appending to the code
  8. ;
  9. ; Copyright (C) Digita International
  10.  
  11. ;------------------------------------------------------
  12. ; ### Variable declarations
  13. (set #ProgName "Organiser")
  14. (set #NumberInstallDisks 1)
  15. (set #InstallDisk "OrganiserInstall")
  16. (set #NumNewDisks 2)
  17. (set #MainDisk "Organiser")
  18. (set #FilesDisk "OrganiserExtras")
  19. (set #RamTempFile "RAM:OrgTemp")
  20. (set #RamUtils "RAM:OrgUtils")
  21. (set #HDSpaceNeededBytes (* (* 1 1024) 1024)) ;1MB free
  22. (set #ToolDest (cat #MainDisk ":Organiser"))
  23. (set #DriverDest "DEVS:Printers")
  24. (set #ThemeDefaultTool "Organiser")
  25. (set #OrgToolDest (cat #MainDisk ":" #ProgName))
  26. (set #HelpTool "HELPFILE")
  27.  
  28. ;------------------------------------------------------
  29. ; ### String declaration
  30. ;// Drawer names
  31. (set #DrawerName "Organiser")
  32. (set #FilesName "Files")
  33. (set #SuppStorageName "Supplements Storage 96")
  34. (set #SupplementsName "Supplements")
  35. (set #ThemesName "Diary Themes 96")
  36. (set #TemplatesName "Templates")
  37. (set #CatalogsName "Catalogs")
  38. (set #FontsName "Fonts")
  39. (set #LibsDefault "Libs")
  40. (set #SamplesName "Sound Samples")
  41.  
  42. ;------------------------------------------------------
  43. ;// Archive Names
  44. (set #ASLArchiveName "asl.lha")
  45. (set #CommoditiesArchiveName "commodities.lha")
  46. (set #AmigaGuideArchiveName "Amigaguide.lha")
  47. (set #DiskfontArchiveName "Diskfont.lha")
  48. (set #ProgArchiveName "Organiser.lha")
  49. (set #CatalogsArchiveName "Catalogs.lha")
  50. (set #SuppStorageArchiveName "Supp_Storage.lha")
  51. (set #SupplementsArchiveName "Supplements.lha")
  52. (set #ThemesArchiveName "Themes.lha")
  53. (set #FilesArchiveName "Files.lha")
  54. (set #TemplatesArchiveName "Templates.lha")
  55. (set #SystemFontsArchiveName "Fonts.lha")
  56. (set #StartupArchiveName "startup.lha")
  57. (set #DevicesArchiveName "Devices.lha")
  58. (set #Env-ArchiveArchiveName "Env-Archive.lha")
  59. (set #HelpArchiveName "Help.lha")
  60. (set #PrinterArchiveName "Printer.lha")
  61. (set #SoundArchiveName "Sound.lha")
  62. (set #HarpArchiveName "Harp.lha")
  63. (set #DrawerInfoArchiveName "DrawerInfo.lha")
  64. (set #ProgramInfoArchiveName "ProgramInfo.lha")
  65. (set #HDInfoArchiveName "HDInfo.lha")
  66. (set #Disk1InfoArchiveName "Disk1Info.lha")
  67. (set #Disk2InfoArchiveName "Disk2Info.lha")
  68. (set #OtherPrefsArchiveName "OtherPrefs.lha")
  69. (set #AddMonitorArchiveName "AddMonitor.lha")
  70.  
  71. ;------------------------------------------------------
  72. ;// File Names
  73. (set #LibsSource (cat #InstallDisk ":libs"))
  74.  
  75. ;------------------------------------------------------
  76. ;// Message strings
  77. (set #BadKick
  78.     (cat #ProgName " Erfordert zum Betrieb Workbench 2.04 oder höher.")
  79. )
  80.  
  81. (set #CheckStartup
  82.     (cat "\n\n\nBitte warten...\n\nDer Installer prüft Ihre Systemkonfiguration.")
  83. )
  84.  
  85. (set #DestChoicePrompt
  86.     (cat "\n\n\nWo soll " #ProgName " installiert werden?")
  87. )
  88.  
  89. (set #FloppyChoiceMsg
  90.     (cat "Auf Disketten")
  91. )
  92.  
  93. (set #HardDiskChoiceMsg
  94.     (cat "Auf einer Festplatte")
  95. )
  96.  
  97. (set #DestChoiceHelp
  98.     (cat "\nWählen Sie \"Auf einer Festplatte\", um "
  99.         "das Programm " #ProgName " auf Festplatte zu "
  100.                 "installieren.\n\n"
  101.         "Wählen Sie \"Auf Disketten\", um "
  102.         "" #ProgName " auf Arbeitsdisketten zu "
  103.                 "installieren.\n\n\n"
  104.     )
  105. )
  106.  
  107. (set #HardDiskDestChoiceMsg
  108.     (cat "Wo soll die Schublade\n" #DrawerName " erzeugt werden?")
  109. )
  110.  
  111. (set #HardDiskDestChoiceHelp
  112.     (cat "Wählen Sie die Schublade aus, inder " #ProgName " installiert "
  113.         "werden soll, und klicken Sie auf Weiter.  Eine neue Schublade mit "
  114.                 "dem Titel  \"" #DrawerName "\" wird erstellt, in die das Programm "
  115.                 "" #ProgName " hineinkopiert wird. "
  116.     )
  117. )
  118.  
  119. (Set #HDBootedFromFloppy
  120.     (cat "Es scheint, als wollten Sie auf Festplatte installieren, hätten "
  121.          "aber von Diskette gestartet. Dies funktioniert nicht.\n\n"
  122.          "Starten Sie Ihren Amiga ohne Disketten in den Laufwerken neu, "
  123.          "damit er von der Festplatte startet, und installieren Sie "
  124.          "" #ProgName " erneut."
  125.     )
  126. )
  127.  
  128.  
  129. (set #NoDiskSpaceMsg1
  130.     (cat "\nZu wenig freier Festplattenspeicher, um " #ProgName ""
  131.         "zu installieren. Es sind mindestens "
  132.     )
  133. )
  134.  
  135. (set #NoDiskSpaceMsg2
  136.     (cat "MB freier Festplattenspeicher erforderlich.\n\n "
  137.              "Klicken Sie entweder auf \"Installation abbrechen\", um "
  138.              "diesen Installationsvorgang abzubrechen und einige "
  139.              "nicht benötigte Dateien zu löschen, oder klicken Sie "
  140.              "auf \"Weiter\", um auf eine andere Partition zu "
  141.              "installieren."
  142.     )
  143. )
  144.  
  145. (set #DrawerExistsMsg
  146.     (cat "\nIm gewählten Zielverzeichnis existiert bereits "
  147.              "ein Verzeichnis mit dem Namen \"" #DrawerName "\".\n\n"
  148.              "Möchten Sie es ersetzen, oder ein neues Zielverzeichnis "
  149.              "auswählen?\n\n"
  150.     )
  151. )
  152.  
  153. (set #DrawerExistsChoice1 "Ersetzen")
  154.  
  155. (set #DrawerExistsChoice2 "Neues Zielverzeichnis")
  156.  
  157. (set #DrawerExistsHelp
  158.     (cat "\nIm Verzeichnis  \"#DrawerName \" wurde schon"
  159.         "eine Installation gefunden.\n\nKlicken Sie auf \""
  160.         #DrawerExistsChoice1 "\" um sie durch die neue Version von "
  161.         "von " #ProgName " zu ersetzen.\nKlicken Sie auf \"" #DrawerExistsChoice2 "\", um ein "
  162.         "neues Zielverzeichnis auszuwählen.\n\n"
  163.         "Wenn Sie \"" #DrawerExistsChoice1 "\" auswählen, sollten Sie "
  164.         "von allen noch benötigten Dateien zunächst eine Kopie erstellen."
  165.     )
  166. )
  167.  
  168. (set #InstallChoice1 "Ja - Ersetzen")
  169.  
  170. (set #InstallChoice2 "Nein")
  171.  
  172. (set #OldASLLibraryMsg
  173.     (cat "Die ASL.library existiert entweder nicht oder in der falschen Version. "
  174.              " #ProgName benötigt mindestens Version 36 dieser "
  175.          "Bibliothek. Möchten Sie Version 38 jetzt installieren?"
  176.     )
  177. )
  178. (set #OldASLLibraryHelp
  179.     (cat #ProgName " benötigt zum Betrieb mind. Version 36 "
  180.         "der ASL.library (Workbench 2.0 oder höher).\n\n"
  181.         "Wählen Sie \"" #InstallChoice1 "\" , um Version 38 und "
  182.         "anschließend " #ProgName " zu installieren.\n "
  183.                 "Wählen Sie  \"" #InstallChoice2 "\", wenn die Version "
  184.         "38 der ASL.library nicht installiert werden soll."
  185.     )
  186. )
  187.  
  188. (set #OldCommoditiesLibraryMsg
  189.     (cat "Die Commodities.library liegt gar nicht oder in einer "
  190.              "falschen Version vor. Benötigt wird mindestens Version "
  191.          "37. Möchten Sie jetzt Version 38 kopieren?"
  192.     )
  193. )
  194.  
  195. (set #OldCommoditiesLibraryHelp
  196.     (cat #ProgName " benötigt zum Betrieb mindestens Version 37 "
  197.         "der the Commodities library (Workbench 2.0 oder höher).\n\n"
  198.         "Wählen Sie \"" #InstallChoice1 "\" um Version 38 der Bibliothek "
  199.         "zu kopieren, und dann " #ProgName " zu installieren.\n "
  200.                 "Wählen Sie \"" #InstallChoice2 "\", wenn die Bibliothek "
  201.         "in der Version 38 nicht installiert werden soll."
  202.     )
  203. )
  204.  
  205. (set #OldDiskFontLibraryMsg
  206.     (cat  "Die diskfont.library existiert entweder nicht oder in der falschen Version. "
  207.         #ProgName " benötigt mindestens Version 36 dieser "
  208.         "Bibliothek. Möchten Sie Version 38 jetzt installieren?"
  209.     )
  210. )
  211.  
  212. (set #OldDiskFontLibraryHelp
  213.     (cat #ProgName " benötigt zum Betrieb mind. Version 36 "
  214.         "der diskfont.library (Workbench 2.04 oder höher).\n\n"
  215.         "Wählen Sie \"" #InstallChoice1 "\" , um Version 38 und "
  216.         "anschließend " #ProgName " zu installieren.\n "
  217.                 "Wählen Sie  \"" #InstallChoice2 "\", wenn die Version "
  218.         "38 der ASL.library nicht installiert werden soll und "
  219.                 "Sie die Installation abbrechen möchten."
  220.     )
  221. )
  222.  
  223. (set #OldAmigaGuideLibraryMsg
  224.     (cat "Die amigaguide.library existiert entweder nicht oder in der falschen Version. "
  225.          #ProgName " benötigt mindestens Version 34.11 dieser "
  226.          "Bibliothek. Möchten Sie diese jetzt installieren?"
  227.     )
  228. )
  229.  
  230. (set #OldAmigaGuideLibraryHelp
  231.     (cat #ProgName " benötigt zum Betrieb mind. Version 34.11 "
  232.         "der amigaguide.library.\n\n"
  233.         "Wählen Sie \"" #InstallChoice1 "\" , um Version 34.11 "
  234.         "zu installieren.\n "
  235.                 "Wählen Sie  \"" #InstallChoice2 "\", wenn die Version "
  236.         "34.11 der amigaguide.library nicht installiert werden soll. "
  237.     )
  238. )
  239.  
  240. (set #OldLocaleLibraryMsg
  241.     (cat "You either do not have an Locale library, or it is the wrong version. "
  242.         #ProgName " requires you have at least version 38 of this "
  243.         "library. Do you want to copy version 38 of the Locale library?"
  244.     )
  245. )
  246.  
  247. (set #OldLocaleLibraryHelp
  248.     (cat #ProgName " benötigt zum Betrieb mind. Version 38 "
  249.         "der locale.library.\n\n"
  250.         "Wählen Sie \"" #InstallChoice1 "\" , um Version 38 "
  251.         "zu installieren.\n "
  252.                 "Wählen Sie  \"" #InstallChoice2 "\", wenn die Version "
  253.         "38 der locale.library nicht installiert werden soll. "
  254.     )
  255. )
  256.  
  257. (set #OldParseLibraryMsg
  258.     (cat "Die iffparse.library existiert entweder nicht oder in der falschen Version. "
  259.         #ProgName " benötigt mindestens Version 33 dieser "
  260.         "Bibliothek. Möchten Sie Version 34 jetzt installieren?"
  261.     )
  262. )
  263.  
  264. (set #OldParseLibraryHelp
  265.     (cat #ProgName " benötigt zum Betrieb mind. Version 33 "
  266.         "der iffparse.library.\n\n"
  267.         "Wählen Sie \"" #InstallChoice1 "\" , um Version 34 "
  268.         "zu installieren.\n "
  269.                 "Wählen Sie  \"" #InstallChoice2 "\", wenn die Version "
  270.         "34 der iffparse.library nicht installiert werden soll. "
  271.  
  272.     )
  273. )
  274.  
  275. (set #InsertDiskMsg
  276.     (cat "\nBitte folgende Diskette einlegen: \n\n")
  277. )
  278.  
  279. (set #diskhelp
  280.     (cat "\nWenn Sie sicher sind, daß sich die korrekte Diskette im Laufwerk "
  281.         "befindet, ist deren Name evtl. falsch. \n"
  282.         "Vergewissern Sie sich, daß dem Namen nicht das Präfix "
  283.                 " 'copy_of_'voransteht, und daß er keine Leerzeichen enthält.\n\n\n" @askdisk-help
  284.     )
  285. )
  286.  
  287. (set #Unpackmsg1 "Dateien werden entpackt ")
  288. (set #Unpackmsg2 " nach ")
  289. (set #Unpackmsg3 "\n\nEinen Moment, bitte...")
  290.  
  291. (set #ArchiveAbortMsg1
  292.     (cat "Fehler beim Entpacken.")
  293. )
  294.  
  295. (set #ArchiveAbortMsg2
  296.     (cat "'. Versuchen Sie, das Programm in ein anderes Verzeichnis "
  297.         "oder eine andere Partition zu installieren. Sollte auch "
  298.                 "dies fehlschlagen, wenden Sie sich bitte an den technischen "
  299.                 "Kundendienst. "
  300.     )
  301. )
  302.  
  303. (set #BlankDiskWarning
  304.     (cat "\nLegen Sie eine Leerdiskette in das interne Laufwerk,\n"
  305.         "und klicken Sie auf \"Weiter\"."
  306.         "\n\nVORSICHT: Alle auf der Diskette vorhandenen Daten "
  307.         "werden gelöscht."
  308.     )
  309. )
  310.  
  311. (set #FloppyWarningHelp
  312.     (cat     "\nBei diesem Vorgang wird die Diskette im internen "
  313.                 "Laufwerk formatiert und damit für den Gebraucht mit "
  314.                 "Organiser vorbereitet. "
  315.                 "\n\n Erstellen Sie vor der Installation unbedingt "
  316.                 "eine Kopie Ihrer Originaldisketten, und bewahren "
  317.                 "Sie sie an einem sicheren Ort auf. "
  318.                 "Außerdem sollten Sie den Schreibschutz setzen, bevor "
  319.                 "Sie auf \"Weiter\" klicken. "
  320.     )
  321. )
  322.  
  323. (set #NotBlankMsg1
  324.     (cat "Sie haben die Diskette \"")
  325. )
  326.  
  327. (set #NotBlankMsg2
  328.     (cat "\" im internen Laufwerk.\n\nBitte ersetzen Sie "
  329.         "diese Diskette durch eine Leerdiskette, bevor "
  330.         "Sie auf \"Weiter\" klicken."
  331.     )
  332. )
  333.  
  334. (set #FormatWorkingMsg
  335.     (cat "Einen Moment, bitte: Diskette wird formatiert.")
  336. )
  337.  
  338. (set #FormatError
  339.     (cat     "\nBei dem Versuch, diese Diskette zu formatieren, "
  340.                 "ist ein Fehler aufgetreten. "
  341.                 "Bitte versuchen Sie es mit einer anderen Diskette "
  342.                 "erneut. "
  343.     )
  344. )
  345.  
  346. (set #FormatErrorHelp
  347.     (cat "\nBeim Formatieren der Diskette ist ein Fehler "
  348.                 "aufgetreten. Die Anzahl möglicher Ursachen ist "
  349.                 "groß, meist handelt es sich jedoch um einen Defekt "
  350.                 "der Diskette oder des Laufwerks.\nBitte probieren "
  351.                 "Sie zunächst eine andere Diskette aus und prüfen "
  352.                 "Sie das Laufwerk auf einwandfreie Funktion, bevor "
  353.                 "Sie sich an unseren Kundendienst wenden. "
  354.     )
  355. )
  356.  
  357. (set #FormatCompleteMsg1
  358.     (cat " erstell.\n\nNehmen Sie die Diskette aus dem "
  359.         "internen Laufwerk, beschriftenn Sie sie mit \""
  360.     )
  361. )
  362.  
  363. (set #FormatCompleteMsg2
  364.     (cat "\", und klicken Sie auf \"Weiter\".")
  365. )
  366.  
  367. (set #FormatChoiceprompt
  368.     (cat "\n" #ProgName " wird bei der Installation zwei Disketten "
  369.                 "formatieren und mit Namen versehen. "
  370.         "Weitere Informationen unter 'Hilfe'. Möchten Sie:"
  371.     )
  372. )
  373.  
  374. (set #FormatChoicemsg1 "Einige Leerdisketten normal formatieren")
  375.  
  376. (set #FormatChoicemsg2 "Einige Leerdisketten schnell formatieren")
  377.  
  378. (set #FormatChoice-Help
  379.     (cat "Dieses Installationsprogramm muß zur Installation von " #ProgName " "
  380.              "zunächst zwei Disketten formatieren und mit Namen versehen. "
  381.              "\n\n Wählen Sie '" #FormatChoicemsg1 "', um die Disketten normal "
  382.              "zu formatieren, oder '" #FormatChoicemsg2 "', um Disketten, die "
  383.          "bereits mit dem Fast File System formatiert sind, schnell zu "
  384.              "formatieren. "
  385.  
  386.     )
  387. )
  388.  
  389. (set #FloppyFinishedMsg
  390.     (cat "\nNach dem Anklicken von 'Weiter', legen Sie die \"" #MainDisk
  391.         "\" -Diskette in das interne Diskettenlaufwerk, und starten "
  392.              "Sie Ihren Amiga neu.\n "
  393.     )
  394. )
  395.  
  396. (set #WorkingMsg (cat "Bitte warten...\n\nInstalliere " #ProgName))
  397.  
  398. (set #CreateDiskPrompt1 "\n\nFolgende erstellen:\n\n'")
  399. (set #CreateDiskPrompt2 "' diskette?")
  400.  
  401. (set #ChoiceContinue "Ja")
  402.  
  403. (set #ChoiceSkip "Diesen Teil überspringen")
  404.  
  405. (set #CreateMainDiskHelp
  406.     (cat "\nDie Diskette '" #MainDisk "' enthält alle "
  407.         #ProgName " Programmdateien. \n\nWenn Sie die Diskette "
  408.         #MainDisk " erstellen möchten, klicken Sie auf '" #ChoiceContinue "'.\n "
  409.                 " Wenn Sie diese Diskette nicht erstellen möchten, klicken Sie auf '" #ChoiceSkip "'."
  410.     )
  411. )
  412.  
  413. (set #CreateFilesDiskHelp
  414.     (cat "\nDie Diskette '" #FilesDisk "' enthält alle "
  415.         #ProgName " Hilfs- und Datendateien. \n\nWenn Sie die Diskette "
  416.         #FilesDisk " erstellen möchten, klicken Sie auf '" #ChoiceContinue "'.\n "
  417.                 "Wenn Sie diese Diskette nicht erstellen möchten, klicken Sie auf '" #ChoiceSkip "'."
  418.     )
  419. )
  420.  
  421. (set #AskLocaleCmd "Assign >NIL: LOCALE: SYS:Locale")
  422.  
  423. (set #AskLocaleMsg
  424.     (cat "Es scheint, als sei der Locale-Voreinsteller auf Ihrer Festplatte "
  425.              "nicht korrekt installiert. " #ProgName " benötigt das Locale-System "
  426.              "jedoch zur korrekten Funktion.\n\n"
  427.          "Die Datei 'User-Startup' muß mit einem Assign versehen werden:\n\n "
  428.          "'" #AskLocaleCmd "'\n\nKlicken Sie auf Weiter, um fortzufahren."
  429.     )
  430. )
  431.  
  432. (set #AskLocaleHelp
  433.     (cat "Damit die Datums- und Zeitfunktionen korrekt arbeiten, benötigt "
  434.              "" #ProgName " das Programm Locale auf Ihrer Festplatte. Zu "
  435.              "dessen Konfigurierung muß eine Zuweisung mit dem Befehl Assign "
  436.              "in der Datei User-Startup existieren.\n\n. "
  437.              "Klicken Sie auf Weiter, um diese automatisch erzeugen zu "
  438.              "lassen, oder auf 'Diesen Teil überspringen', wenn die Datei "
  439.              "nicht modifiziert werden soll. "
  440.     )
  441. )
  442.  
  443.  
  444. (set #PrinterChoicePrompt
  445.     (cat "\n\nMöchten Sie einen Druckertreiber installieren?"
  446.     )
  447. )
  448.  
  449. (set #PrinterChoicemsg1 "Ja")
  450. (set #PrinterChoicemsg2 "Nein")
  451.  
  452. (set #PrinterChoice-Help
  453.     (cat "Um in " #ProgName " gespeicherte Daten auch drucken zu können, "
  454.              "müssen Sie einen geeigneten Treiber für Ihren Drucker auswählen. "
  455.              "Klicken Sie auf '" #PrinterChoicemsg1 "', um jetzt einen Treiber "
  456.              "auszuwählen, oder auf '" #PrinterChoicemsg2 "', wenn kein "
  457.              "Druckertreiber installiert werden soll. "
  458.     )
  459. )
  460.  
  461.  
  462.  
  463. ;------------------------------------------------------
  464. ; ### Procedure declarations
  465.  
  466. ;------------------------------------------------------
  467. ;// routine to get disk specified in '#FileSourceDisk'
  468. (procedure @GetDisk
  469.     (
  470.         (askdisk
  471.             (prompt #InsertDiskMsg #FileSourceDisk)
  472.             (help #diskhelp)
  473.             (dest #FileSourceDisk)
  474.         )
  475.     )
  476. )
  477.  
  478. ;------------------------------------------------------
  479. ;// Procedure to decompress file set in '#UnpackFile' to '#UnpackDest'
  480. (procedure @UnpackFiles
  481.     (
  482.       (working #Unpackmsg1 #UnpackFile #Unpackmsg2 #UnpackDest #Unpackmsg3)
  483.         (set ExpandName #UnpackFile)
  484.         (set #ArchiveError 0)
  485.         (set RunLhx
  486.             (cat "OrgUtils:Lhx -I -m e \"" ExpandName "\" \"" #UnpackDest "\"")
  487.         )
  488.         (set #ArchiveError (run RunLhx))
  489.         (if (> #ArchiveError 0)
  490.             (
  491.                 (set #ArchiveAbortMsg (cat #ArchiveAbortMsg1 ExpandName #ArchiveAbortMsg2))
  492.                 (abort #ArchiveAbortMsg)
  493.             )
  494.         )
  495.     )
  496. )
  497.  
  498. ;------------------------------------------------------
  499. ;// Initial Checks
  500. (procedure @InitialChecks
  501.     (
  502.         ;// Check OS version
  503.         (working #CheckStartup)
  504.  
  505.         (set #OSVerNum (getversion))
  506.         (set #OSVersion (/ #OSVerNum 65536))
  507.  
  508.         (if (< #OSVersion 37)
  509.             (abort #BadKick)
  510.         )
  511.  
  512.         ;// Create temp file in ram: for files
  513.         (if (not (exists #RamTempFile))
  514.             (
  515.                 (makedir #RamTempFile (safe))
  516.             )
  517.         )
  518.     (makeassign "OrgTemp" #RamTempFile (safe))
  519.  
  520.         ;// Create temp file in ram: for utils
  521.         (if (not (exists #RamUtils))
  522.             (
  523.                 (makedir #RamUtils (safe))
  524.             )
  525.         )
  526.     (makeassign "OrgUtils" #RamUtils (safe))
  527.  
  528.     ;// Set flag if novice user
  529.     (set #UserNovice 0)
  530.     (if (= @user-level 0)
  531.       (
  532.         (set #UserNovice 1)
  533.       )
  534.     )
  535.       (copyfiles
  536.             (source (cat #InstallDisk ":Utils"))
  537.             (dest "OrgUtils:")
  538.             (all)
  539.             (nogauge)
  540.             (optional "nofail")
  541.         )
  542.       ;// don't copy delete to OrgUtils, as it is used to delete OrgUtils!
  543.       (copyfiles
  544.             (source (cat #InstallDisk ":c"))
  545.             (dest "Ram:")
  546.             (pattern "delete")
  547.             (nogauge)
  548.             (optional "nofail")
  549.         )
  550.       (copyfiles
  551.             (source (cat #InstallDisk ":System"))
  552.             (dest "OrgUtils:")
  553.             (pattern "format")
  554.             (nogauge)
  555.             (optional "nofail")
  556.         )
  557.     )
  558. )
  559.  
  560. ;------------------------------------------------------
  561. ;// Check that ASL library is at least v36 (if not replace)
  562. (procedure @CheckASL
  563.     (
  564.         (set ASLVerNum (getversion (cat #LibsDefault ":ASL.library")))
  565.         (set ASLVer (/ ASLVerNum 65536))
  566.         (if (< ASLVer 36)
  567.             (
  568.         (if (= @user-level 2)
  569.             (
  570.                 (set InstallASLLibrary
  571.                   (askbool
  572.                        (prompt #OldASLLibraryMsg)
  573.                        (choices #InstallChoice1 #InstallChoice2)
  574.                        (help #OldASLLibraryHelp)
  575.                        (default 1)
  576.                   )
  577.                     )
  578.                 (if (= InstallASLLibrary 1)
  579.                      (
  580.                        (@InstallASL)
  581.                   )
  582.                 )
  583.               )
  584.               (
  585.                   (@InstallASL)
  586.               )
  587.             )
  588.           )
  589.         ) ;endif
  590.     )
  591. )
  592.  
  593. ;------------------------------------------------------
  594. ;// Procedure to install the asl library
  595. (procedure @InstallASL
  596.     (
  597.     (set #UnpackFile (cat #ArchiveLocation #ASLArchiveName))
  598.     (set #UnpackDest #LibsDest)
  599.  
  600.         (if (exists (cat #UnpackDest "asl.library"))
  601.             (delete (cat #UnpackDest "asl.library")
  602.                 (optional "force")
  603.             )
  604.         )
  605.     (@UnpackFiles)
  606.     )
  607. )
  608.  
  609. ;------------------------------------------------------
  610. ;// Check that Locale library is at least v38 (if not replace)
  611. (procedure @CheckLocale
  612.     (
  613.         (set LocaleVerNum (getversion (cat #LibsDefault ":Locale.library")))
  614.         (set LocaleVer (/ LocaleVerNum 65536))
  615.         (if (< LocaleVer 38)
  616.             (
  617.         (if (= @user-level 2)
  618.             (
  619.                 (set InstallLocaleLibrary
  620.                   (askbool
  621.                        (prompt #OldLocaleLibraryMsg)
  622.                        (choices #InstallChoice1 #InstallChoice2)
  623.                        (help #OldLocaleLibraryHelp)
  624.                        (default 1)
  625.                   )
  626.                     )
  627.                 (if (= InstallLocaleLibrary 1)
  628.                      (
  629.                        (@InstallLocale)
  630.                   )
  631.                 )
  632.               )
  633.               (
  634.                   (@InstallLocale)
  635.               )
  636.             )
  637.           )
  638.         ) ;endif
  639.     )
  640. )
  641.  
  642. ;------------------------------------------------------
  643. ;// Procedure to install the locale library
  644. (procedure @InstallLocale
  645.     (
  646.         (if (exists (cat #LibsDefault ":locale.library"))
  647.             (
  648.                 (delete (cat #LibsDefault ":locale.library")
  649.                     (optional "force")
  650.                 )
  651.             )
  652.         )
  653.  
  654.         (copyfiles
  655.             (source #LibsSource)
  656.             (dest (cat #LibsDefault ":"))
  657.             (pattern "locale.library")
  658.             (optional "force")
  659.         )
  660.     )
  661. )
  662.  
  663.  
  664. ;------------------------------------------------------
  665. ;// Check that IFFParse library is at least v33 (if not replace)
  666. (procedure @CheckParse
  667.     (
  668.         (set ParseVerNum (getversion (cat #LibsDefault ":iffparse.library")))
  669.         (set ParseVer (/ ParseVerNum 65536))
  670.         (if (< ParseVer 33)
  671.             (
  672.         (if (= @user-level 2)
  673.             (
  674.                 (set InstallParseLibrary
  675.                   (askbool
  676.                        (prompt #OldParseLibraryMsg)
  677.                        (choices #InstallChoice1 #InstallChoice2)
  678.                        (help #OldParseLibraryHelp)
  679.                        (default 1)
  680.                   )
  681.                     )
  682.                 (if (= InstallParseLibrary 1)
  683.                      (
  684.                        (@InstallParse)
  685.                   )
  686.                 )
  687.               )
  688.               (
  689.                   (@InstallParse)
  690.               )
  691.             )
  692.           )
  693.         ) ;endif
  694.     )
  695. )
  696.  
  697. ;------------------------------------------------------
  698. ;// Procedure to install the iffparse library
  699. (procedure @InstallParse
  700.     (
  701.         (if (exists (cat #LibsDefault ":iffparse.library"))
  702.             (
  703.                 (delete (cat #LibsDefault ":iffparse.library")
  704.                     (optional "force")
  705.                 )
  706.             )
  707.         )
  708.  
  709.         (copyfiles
  710.             (source #LibsSource)
  711.             (dest (cat #LibsDefault ":"))
  712.             (pattern "iffparse.library")
  713.             (optional "force")
  714.         )
  715.     )
  716. )
  717.  
  718.  
  719. ;------------------------------------------------------
  720. ;// Check that diskfont library is at least v36 (if not replace)
  721. (procedure @CheckDiskFont
  722.     (
  723.         (set DFVerNum (getversion (cat #LibsDefault ":diskfont.library")))
  724.         (set DFVer (/ DFVerNum 65536))
  725.         (if (< DFVer 36)
  726.             (
  727.         (if (= @user-level 2)
  728.             (
  729.                 (set InstallDiskFontLibrary
  730.                   (askbool
  731.                        (prompt #OldDiskFontLibraryMsg)
  732.                        (choices #InstallChoice1 #InstallChoice2)
  733.                        (help #OldDiskFontLibraryHelp)
  734.                        (default 1)
  735.                   )
  736.                     )
  737.                 (if (= InstallDiskFontLibrary 1)
  738.                      (
  739.                        (@InstallDiskFont)
  740.                   )
  741.                 ) ;end if
  742.               )
  743.               (
  744.                   (@InstallDiskFont)
  745.               )
  746.             ) ;end if
  747.           )
  748.         ) ;endif
  749.     )
  750. )
  751.  
  752. ;------------------------------------------------------
  753. ;// Procedure to install diskfont library
  754. (procedure @InstallDiskFont
  755.     (
  756.     (set #UnpackFile (cat #ArchiveLocation #DiskfontArchiveName))
  757.     (set #UnpackDest #LibsDest)
  758.         (if (exists (cat #UnpackDest "diskfont.library"))
  759.             (delete (cat #UnpackDest "diskfont.library")
  760.                 (optional "force")
  761.             )
  762.         )
  763.     (@UnpackFiles)
  764.   )
  765. )
  766.  
  767. ;------------------------------------------------------
  768. ;** Check that AmigaGuide library is at least version 34.11 (if not replace)
  769. (procedure @CheckAmigaGuide
  770.     (
  771.         (set AGVerNum (getversion (cat #LibsDefault ":amigaguide.library")))
  772.         (set AGVer (/ AGVerNum 65536))
  773.         (set AGRev (- AGVerNum (* AGVer 65536)))
  774.         (if (< AGVer 35)
  775.             (
  776.         (if (< AGRev 11)
  777.             (
  778.                 (if (= @user-level 2)
  779.                     (
  780.                         (set InstallAmigaGuideLibrary
  781.                           (askbool
  782.                                (prompt #OldAmigaGuideLibraryMsg)
  783.                                (choices #InstallChoice1 #InstallChoice2)
  784.                                (help #OldAmigaGuideLibraryHelp)
  785.                                (default 1)
  786.                           )
  787.                             )
  788.                         (if (= InstallAmigaGuideLibrary 1)
  789.                              (
  790.                                (@InstallAmigaGuide)
  791.                           )
  792.                         );end if
  793.                       )
  794.                       (
  795.                           (@InstallAmigaGuide)
  796.                       )
  797.                     ) ;end if (user-level)
  798.                   )
  799.                 ) ;end if (revision)
  800.           )
  801.         ) ;end if (version)
  802.     )
  803. )
  804.  
  805. ;------------------------------------------------------
  806. ;// Procedure to install amigaguide library
  807. (procedure @InstallAmigaGuide
  808.     (
  809.     (set #UnpackFile (cat #ArchiveLocation #AmigaGuideArchiveName))
  810.     (set #UnpackDest #LibsDest)
  811.         (if (exists (cat #UnpackDest "amigaguide.library"))
  812.             (delete (cat #UnpackDest "amigaguide.library")
  813.                 (optional "force")
  814.             )
  815.         )
  816.     (@UnpackFiles)
  817.   )
  818. )
  819.  
  820. ;------------------------------------------------------
  821. ;// Check that commodities library is at least v37 (if not replace)
  822. (procedure @CheckCommodities
  823.     (
  824.         (set CommoditiesVerNum (getversion (cat #LibsDefault ":commodities.library")))
  825.         (set CommoditiesVer (/ CommoditiesVerNum 65536))
  826.         (if (< CommoditiesVer 37)
  827.             (
  828.         (if (= @user-level 2)
  829.             (
  830.                 (set InstallCommoditiesLibrary
  831.                   (askbool
  832.                        (prompt #OldCommoditiesLibraryMsg)
  833.                        (choices #InstallChoice1 #InstallChoice2)
  834.                        (help #OldCommoditiesLibraryHelp)
  835.                        (default 1)
  836.                   )
  837.                     )
  838.                 (if (= InstallCommoditiesLibrary 1)
  839.                      (
  840.                        (@InstallCommodities)
  841.                   )
  842.                 )
  843.               )
  844.               (
  845.                   (@InstallCommodities)
  846.               )
  847.             )
  848.           )
  849.         ) ;endif
  850.     )
  851. )
  852.  
  853. ;------------------------------------------------------
  854. ;// Procedure to install the commodities library
  855. (procedure @InstallCommodities
  856.     (
  857.     (set #UnpackFile (cat #ArchiveLocation #CommoditiesArchiveName))
  858.     (set #UnpackDest #LibsDest)
  859.  
  860.         (if (exists (cat #UnpackDest "commodities.library"))
  861.             (delete (cat #UnpackDest "commodities.library")
  862.                 (optional "force")
  863.             )
  864.         )
  865.     (@UnpackFiles)
  866.     )
  867. )
  868.  
  869. ;------------------------------------------------------
  870. ;// Procedure to de-archive screen fonts
  871. (procedure @DearchiveScreenFonts
  872.     (
  873.     (set #UnpackFile (cat #ArchiveLocation #SystemFontsArchiveName))
  874.         (set #UnpackDest #SystemFontsDest)
  875.         (@UnpackFiles)
  876.   )
  877. )
  878.  
  879. ;------------------------------------------------------
  880. ;// Procedure to de-archive Env-Archive files
  881. (procedure @DearchiveEnv-Archive
  882.     (
  883.     (set #UnpackFile (cat #ArchiveLocation #Env-ArchiveArchiveName))
  884.         (set #UnpackDest #Env-ArchiveDest)
  885.         (@UnpackFiles)
  886.   )
  887. )
  888.  
  889. ;------------------------------------------------------
  890. ;// Procedure to de-archive Env files
  891. (procedure @DearchiveEnv
  892.     (
  893.     (set #UnpackFile (cat #ArchiveLocation #Env-ArchiveArchiveName))
  894.         (set #UnpackDest "ENV:")
  895.         (@UnpackFiles)
  896.   )
  897. )
  898.  
  899.  
  900. ;------------------------------------------------------
  901. ;// Install to HD or Floppy ?
  902. (procedure @CheckHDorFloppy
  903.     (
  904.         ;// Floppy or HD ?
  905.         (set #FullPath (expandpath "sys:"))
  906.         (if (= #FullPath (cat #InstallDisk ":"))
  907.             (set #DiskDefault 1)
  908.             (set #DiskDefault 0)
  909.         )
  910.  
  911.  
  912.     ;** set novice user to expert briefly
  913.     (set #UserNovice 0)
  914.     (if (= @user-level 0)
  915.       (
  916.         (user 2)
  917.         (set #UserNovice 1)
  918.       )
  919.     )
  920.       (set #DestinationType
  921.       (askchoice
  922.         (prompt #DestChoicePrompt)
  923.         (choices #HardDiskChoiceMsg
  924.              #FloppyChoiceMsg
  925.         )
  926.         (help #DestChoiceHelp)
  927.         (default #DiskDefault)
  928.       )
  929.     )
  930.     ;** set novice user back to novice
  931.     (if (= #UserNovice 1)
  932.       (user 0)
  933.     )
  934.  
  935.     (if (= #DestinationType 0)
  936.         (set #DestinationType "Hard")
  937.         (set #DestinationType "Floppy")
  938.     )
  939.     )
  940. )
  941.  
  942. ;------------------------------------------------------
  943. ;// Choose hard disk destination for Organiser drawer
  944. (procedure @ChooseHDDest
  945.     (
  946.         ;** Find default drawer
  947.         (set #DefaultDest (getassign "Work" "d"))
  948.         (if (= #DefaultDest "")
  949.             (
  950.                 (set #DefaultDest (getassign "HD3" "d"))
  951.                 (if (= #DefaultDest "")
  952.                     (
  953.                         (set #DefaultDest (getassign "HD2" "d"))
  954.                         (if (= #DefaultDest "")
  955.                 (
  956.                 (set #DefaultDest (getassign "HD1" "d"))
  957.                 (if (= #DefaultDest "")
  958.                   (
  959.                     (set #DefaultDest (getassign "DH1" "d"))
  960.                     (if (= #DefaultDest "")
  961.                       (
  962.                         (set #DefaultDest (getassign "HD0" "d"))
  963.                         (if (= #DefaultDest "")
  964.                           (
  965.                             (set #DefaultDest "DH0:")
  966.                             (if (= #UserNovice 1)
  967.                               (user 2)
  968.                             )
  969.                           )
  970.                         )
  971.                       )
  972.                     )
  973.                   )
  974.                 )
  975.               )
  976.             )
  977.           )
  978.         )
  979.             )
  980.         )
  981.         ;** Ask for destination
  982.         (set #DestDrawer
  983.             (askdir
  984.                 (prompt #HardDiskDestChoiceMsg)
  985.                 (help #HardDiskDestChoiceHelp)
  986.                 (default #DefaultDest)
  987.             )
  988.         )
  989.     (if (= #UserNovice 1)
  990.       (user 0)
  991.     )
  992.     )
  993. )
  994.  
  995.  
  996. ;------------------------------------------------------
  997. ;// Find HD Destination and check enough space
  998. (procedure @FindHDDest
  999.     (
  1000.         (set OrgExists 0)
  1001.     (while (= OrgExists 0)
  1002.             (
  1003.           (@ChooseHDDest)
  1004.           (while (< (getdiskspace #DestDrawer) #HDSpaceNeededBytes)
  1005.             (
  1006.               (if (< (getdiskspace #DestDrawer) #HDSpaceNeededBytes)
  1007.                 (
  1008.                             (if (= @user-level 0)
  1009.                               (
  1010.                                 (user 2)
  1011.                                 (set #UserNovice 1)
  1012.                               )
  1013.                             )
  1014.                   (message #NoDiskSpaceMsg1 (/ (/ #HDSpaceNeededBytes 1024) 1024) #NoDiskSpaceMsg2)
  1015.                   (@ChooseHDDest)
  1016.                 )
  1017.                  )
  1018.             )
  1019.             ) ;end while
  1020.             (@CheckExistsAlready)
  1021.         )
  1022.       );end while
  1023.     (if (= #UserNovice 1)
  1024.       (user 0)
  1025.     )
  1026.     )
  1027. )
  1028.  
  1029. ;------------------------------------------------------
  1030. ;// Procedure to check if Organiser exists already in destination
  1031. ;// Replace or choose again if so
  1032. (procedure @CheckExistsAlready
  1033.     (
  1034.     (if (exists (tackon #DestDrawer #DrawerName))
  1035.       (
  1036.         (set ChooseAgainAnswer
  1037.           (askbool
  1038.             (prompt #DrawerExistsMsg)
  1039.             (choices #DrawerExistsChoice1 #DrawerExistsChoice2)
  1040.             (help #DrawerExistsHelp)
  1041.             (default 1)
  1042.           )
  1043.         )
  1044.         (if (= ChooseAgainAnswer 0)
  1045.           (
  1046.             (set OrgExists 0)
  1047.           )
  1048.           (
  1049.             (set OrgExists 1)
  1050.           )
  1051.         )
  1052.       )
  1053.       (;else
  1054.         (set OrgExists 1)
  1055.       )
  1056.     );endif
  1057.     )
  1058. )
  1059.  
  1060. ;------------------------------------------------------
  1061. ;// Create Organiser drawers in chosen destination
  1062. (procedure @CreateDrawers
  1063.     (
  1064.         (working #WorkingMsg)
  1065.         (set #InsideHDDest (tackon #DestDrawer #DrawerName))
  1066.         ;// Make the Organiser drawer
  1067.         (makedir #InsideHDDest (infos))
  1068.  
  1069.         ;// Make the Supplements Storage drawer
  1070.         (set #HDSuppStorageDest (tackon #InsideHDDest #SuppStorageName))
  1071.         (makedir #HDSuppStorageDest (infos))
  1072.  
  1073.         ;// Make the Supplements drawer
  1074.         (set #HDSupplementsDest (tackon #InsideHDDest #SupplementsName))
  1075.         (makedir #HDSupplementsDest (infos))
  1076.  
  1077.         ;// Make the Files drawer
  1078.         (set #HDFilesDest (tackon #InsideHDDest #FilesName))
  1079.         (makedir #HDFilesDest)
  1080.  
  1081.         ;// Make the Themes drawer
  1082.         (set #HDThemesDest (tackon #InsideHDDest #ThemesName))
  1083.         (makedir #HDThemesDest (infos))
  1084.  
  1085.         ;// Make the Samples drawer
  1086.         (set #HDSamplesDest (tackon #InsideHDDest #SamplesName))
  1087.         (makedir #HDSamplesDest (infos))
  1088.  
  1089.         ;// Make the Templates drawer
  1090.         (set #HDTemplatesDest (tackon #InsideHDDest #TemplatesName))
  1091.         (makedir #HDTemplatesDest (infos))
  1092.  
  1093.         ;// Make the Catalogs drawer
  1094.         (set #HDCatalogsDest (tackon #InsideHDDest #CatalogsName))
  1095.         (makedir #HDCatalogsDest)
  1096.     )
  1097. )
  1098.  
  1099. ;------------------------------------------------------
  1100. ;// set up hard drive destinations
  1101. (procedure @SetUpHDProgDests
  1102.     (
  1103.         (working #WorkingMsg)
  1104.         (set #LibsDest (cat #LibsDefault ":"))
  1105.         (set #ProgDest (cat #InsideHDDest "/"))
  1106.         (set #SupplementsDest (cat #HDSupplementsDest "/"))
  1107.         (set #SuppStorageDest (cat #HDSuppStorageDest "/"))
  1108.         (set #FilesDest (cat #HDFilesDest "/"))
  1109.         (set #ThemesDest (cat #HDThemesDest "/"))
  1110.         (set #TemplatesDest (cat #HDTemplatesDest "/"))
  1111.         (set #SystemFontsDest "Fonts:")
  1112.         (set #Env-ArchiveDest "Sys:Prefs/Env-Archive/")
  1113.         (set #SamplesDest (cat #HDSamplesDest "/"))
  1114.         (set #HelpDest (cat #HDFilesDest "/"))
  1115.         (set #OrgToolDest (cat #ProgDest #ProgName))
  1116.     )
  1117. )
  1118.  
  1119. ;------------------------------------------------------
  1120. ;// set up floppy disk destinations
  1121. (procedure @SetUpFloppyProgDests
  1122.     (
  1123.         (set #ProgDest (cat #MainDisk ":"))
  1124.         (set #SupplementsDest (cat #MainDisk ":" #SupplementsName "/"))
  1125.         (set #SuppStorageDest (cat #FilesDisk ":" #SuppStorageName "/"))
  1126.         (set #ThemesDest (cat #FilesDisk ":" #ThemesName "/"))
  1127.         (set #TemplatesDest (cat #FilesDisk ":" #TemplatesName "/"))
  1128.         (set #FilesDest (cat #MainDisk ":" #FilesName "/"))
  1129.         (set #SystemFontsDest (cat #MainDisk ":" #FontsName "/"))
  1130.         (set #Env-ArchiveDest (cat #MainDisk ":Prefs/Env-Archive/"))
  1131.         (set #LibsDest (cat #MainDisk ":Libs/"))
  1132.         (set #SamplesDest (cat #MainDisk ":" #SamplesName "/"))
  1133.         (set #HelpDest (cat #FilesDisk ":Help/"))
  1134.         (set #OrgToolDest (cat #MainDisk ":" #ProgName))
  1135.     )
  1136. )
  1137.  
  1138. ;------------------------------------------------------
  1139. ;// Check to make sure that none of the Organiser disks
  1140. ;// are in the internal drive before creating blank ones.
  1141. (procedure @CheckDisks
  1142.     (
  1143.         (set #NumberDisks (+ #NumberInstallDisks #NumNewDisks))
  1144.         (set #DiskBlank 1)
  1145.         (set n 0)
  1146.         (until (OR (= n #NumberDisks) (= #DiskBlank 0))
  1147.             (
  1148.                 (set #CheckMainDisk
  1149.                     (select n
  1150.                         #InstallDisk
  1151.                         #MainDisk
  1152.                         #FilesDisk
  1153.                     )
  1154.                 )
  1155.                 (if (= (getassign "df0" "d") (cat #CheckMainDisk ":"))
  1156.                     (    ;disk is not blank
  1157.                         (set #DiskBlank 0)
  1158.                     )
  1159.                 )
  1160.                 (set n (+ n 1))
  1161.             )
  1162.         )
  1163.     )
  1164. )
  1165.  
  1166.  
  1167. ;------------------------------------------------------
  1168. ;// Format and name the disk given in #FormatMainDisk
  1169. (procedure @FormatDisk
  1170.     (
  1171.         (working #FormatWorkingMsg)
  1172.         ;*** USE 2.0 FORMAT COMMAND ***
  1173.         (if (= #FormatChoice 0)
  1174.             (
  1175.                 (set #FormatCheck
  1176.                     (run ("OrgUtils:Format drive=df0: name=%s FFS NOICONS" #FormatMainDisk))
  1177.                 )
  1178.             )
  1179.             (
  1180.                 (set #FormatCheck
  1181.                     (run ("OrgUtils:Format drive=df0: name=%s FFS QUICK NOICONS" #FormatMainDisk))
  1182.                 )
  1183.             )
  1184.         )
  1185.     (if (OR (> #FormatCheck 0) (< #FormatCheck 0))
  1186.         (set #NoError 1)
  1187.            (set #NoError 0)
  1188.     )
  1189.         (if (= #NoError 0)
  1190.             (
  1191.                 (if (= #FormatMainDisk #MainDisk)
  1192.                     (run "OrgUtils:Install2.1 df0:")
  1193.                 )
  1194.             )
  1195.         ); endif
  1196.     )
  1197. )
  1198.  
  1199. ;------------------------------------------------------
  1200. ;// routine to check disk in drive ok and format it if so
  1201. (procedure @Makedisk
  1202.     (
  1203.     (set #NoError 1)
  1204.     (while (= #NoError 1)
  1205.         (
  1206.             ;** Make sure that the install disks are not in the drive
  1207.             (run "OrgUtils:Wait 6")  ;Wait a bit for disk access to stop
  1208.             (@CheckDisks)
  1209.             (if (= #DiskBlank 0)
  1210.               (
  1211.                 (message #NotBlankMsg1 #CheckMainDisk #NotBlankMsg2)
  1212.               )
  1213.               (
  1214.                 (set #NoError 1)
  1215.                 (@FormatDisk)
  1216.                 (if (= #NoError 1)
  1217.                   (
  1218.                     (message #FormatError (help #FormatErrorHelp))
  1219.                   )
  1220.                 );endif
  1221.               )
  1222.             );endif
  1223.         )
  1224.     );endwhile
  1225.   )
  1226. )
  1227.  
  1228. ;------------------------------------------------------
  1229. ;// Create floppy disk 1
  1230. (procedure @CreateDisk1
  1231.     (
  1232.     ;// Copy system files from install disk to Ram...
  1233.     (copyfiles
  1234.         (source (cat #InstallDisk ":Libs"))
  1235.         (dest "RAM:Libs")
  1236.         (all)
  1237.         (optional "force")
  1238.     )
  1239.     (copyfiles
  1240.         (source (cat #InstallDisk ":c"))
  1241.         (dest "RAM:c")
  1242.         (all)
  1243.         (optional "force")
  1244.     )
  1245.     (copyfiles
  1246.         (source (cat #InstallDisk ":l"))
  1247.         (dest "RAM:l")
  1248.         (all)
  1249.         (optional "force")
  1250.     )
  1251.     (copyfiles
  1252.         (source (cat #InstallDisk ":system"))
  1253.         (dest "RAM:system")
  1254.         (all)
  1255.         (optional "force")
  1256.    )
  1257.     (copyfiles
  1258.       (source (cat #InstallDisk ":Devs"))
  1259.       (dest "RAM:Devs")
  1260.       (all)
  1261.       (optional "force")
  1262.     )
  1263.     (copyfiles
  1264.       (source (cat #InstallDisk ":prefs"))
  1265.       (dest "RAM:prefs")
  1266.       (all)
  1267.       (optional "force")
  1268.     )
  1269.     (copyfiles
  1270.       (source (cat #InstallDisk ":s"))
  1271.       (dest "RAM:s")
  1272.       (all)
  1273.       (optional "force")
  1274.     )
  1275.  
  1276.  
  1277.         (copyfiles
  1278.           (source (cat #InstallName ":Locale"))
  1279.           (dest "RAM:Locale")
  1280.           (all)
  1281.           (optional "force")
  1282.         )
  1283.  
  1284.  
  1285.     ;// Now create the first disk
  1286.       (message #BlankDiskWarning
  1287.           (help #FloppyWarningHelp)
  1288.       )
  1289.       (set #FormatMainDisk #MainDisk)
  1290.       (@Makedisk)
  1291.  
  1292.     (message (cat "\n" #MainDisk #FormatCompleteMsg1 #MainDisk #FormatCompleteMsg2))
  1293.  
  1294.  
  1295.     ;// Now copy all files from RAM to disk 1, then delete them.
  1296.     (set #FileSourceDisk #MainDisk)
  1297.     (@GetDisk)
  1298.  
  1299.     (makedir (cat #MainDisk ":Prefs") (infos))                ; make Prefs drawer
  1300.  
  1301.     (copyfiles
  1302.         (source "RAM:Libs")
  1303.         (dest (cat #MainDisk ":Libs"))
  1304.         (all)
  1305.         (optional "force")
  1306.     )
  1307.         (run "ram:delete RAM:Libs all" (safe))
  1308.  
  1309.     (copyfiles
  1310.         (source "RAM:l")
  1311.         (dest (cat #MainDisk ":l"))
  1312.         (all)
  1313.         (optional "force")
  1314.     )
  1315.         (run "ram:delete RAM:l all" (safe))
  1316.  
  1317.     (copyfiles
  1318.         (source "RAM:s")
  1319.         (dest (cat #MainDisk ":s"))
  1320.         (all)
  1321.         (optional "force")
  1322.     )
  1323.         (run "ram:delete RAM:s all" (safe))
  1324.  
  1325.  
  1326. (complete 20)
  1327.  
  1328.     (copyfiles
  1329.         (source "RAM:c")
  1330.         (dest (cat #MainDisk ":c"))
  1331.         (all)
  1332.         (optional "force")
  1333.     )
  1334.         (run "ram:delete RAM:c all" (safe))
  1335.  
  1336.     (copyfiles
  1337.         (source "RAM:system")
  1338.         (dest (cat #MainDisk ":system"))
  1339.         (all)
  1340.         (optional "force")
  1341.     )
  1342.         (run "ram:delete RAM:system all" (safe))
  1343.  
  1344.     (copyfiles
  1345.       (source "RAM:Devs")
  1346.       (dest (cat #MainDisk ":Devs"))
  1347.       (all)
  1348.       (optional "force")
  1349.     )
  1350.         (run "ram:delete RAM:Devs all" (safe))
  1351.  
  1352.     (copyfiles
  1353.       (source "RAM:prefs")
  1354.       (dest (cat #MainDisk ":prefs"))
  1355.       (all)
  1356.       (optional "force")
  1357.     )
  1358.         (run "ram:delete RAM:prefs all" (safe))
  1359.  
  1360.     (copyfiles
  1361.       (source "RAM:Locale")
  1362.       (dest (cat #MainDisk ":Locale"))
  1363.       (all)
  1364.       (optional "force")
  1365.     )
  1366.         (run "ram:delete RAM:Locale all" (safe))
  1367.  
  1368. (complete 30)
  1369.  
  1370.         ;## Now install other devices
  1371.         ;## DISK SWAP to get rest of archives
  1372.     (set #FileSourceDisk #InstallDisk)
  1373.     (@GetDisk)
  1374.  
  1375.     ;// ... some archives...
  1376.     (copyfiles
  1377.             (source (cat #InstallDisk ":Archive"))
  1378.             (dest "OrgTemp:")
  1379.             (pattern ("~(Supp_Storage.lha|Themes.lha|Organiser.lha|Templates.lha|Help.lha|Disk1Info.lha|Disk2Info.lha|HDInfo.lha|ProgramInfo.lha|DrawerInfo.lha)"))
  1380.             (optional "force")
  1381.           (safe)
  1382.     )
  1383.  
  1384.     (copyfiles
  1385.             (source (cat #InstallDisk ":S"))
  1386.             (dest "OrgTemp:")
  1387.             (pattern ("(startup-sequence)"))
  1388.             (optional "force")
  1389.           (safe)
  1390.     )
  1391.  
  1392.  
  1393.  
  1394.         ;## DISK SWAP back again to dearchive to disk
  1395.     (set #FileSourceDisk #MainDisk)
  1396.     (@GetDisk)
  1397.  
  1398.     (makedir (cat #MainDisk ":" #SupplementsName) (infos))        ; make Supplements drawer
  1399.     (makedir (cat #MainDisk ":WBStartup") (infos))                ; make WBStartup drawer
  1400.     (makedir (cat #MainDisk ":" #SamplesName) (infos))            ; make Samples drawer
  1401.  
  1402.         ;// Make the Catalogs drawer
  1403.         (set #CatalogsDest (cat #MainDisk ":" #CatalogsName "/"))
  1404.         (makedir (cat #MainDisk ":" #CatalogsName))
  1405.  
  1406.  
  1407.     (set #UnpackFile (cat #ArchiveLocation #DevicesArchiveName))
  1408.     (set #UnpackDest (cat #MainDisk ":Devs/"))
  1409.     (@UnpackFiles)
  1410.         (run (cat "ram:delete " #ArchiveLocation #DevicesArchiveName) (safe))
  1411.  
  1412.  
  1413. (complete 40)
  1414.  
  1415.  
  1416.         (@DearchiveScreenFonts)
  1417.         (run (cat "ram:delete " #ArchiveLocation #SystemFontsArchiveName) (safe))
  1418.  
  1419.         (@DearchiveEnv-Archive)
  1420.         (@DearchiveEnv)
  1421.         (run (cat "ram:delete " #ArchiveLocation #Env-ArchiveArchiveName) (safe))
  1422.  
  1423.         (set #UnpackFile (cat #ArchiveLocation #OtherPrefsArchiveName))
  1424.         (set #UnpackDest (cat #MainDisk ":Prefs/Env-Archive/Sys/"))
  1425.         (@UnpackFiles)
  1426.             (run (cat "ram:delete " #ArchiveLocation #OtherPrefsArchiveName) (safe))
  1427.  
  1428.  
  1429.         (set #UnpackFile (cat #ArchiveLocation #AddMonitorArchiveName))
  1430.         (set #UnpackDest (cat #MainDisk ":System/"))
  1431.         (@UnpackFiles)
  1432.             (run (cat "ram:delete " #ArchiveLocation #AddMonitorArchiveName) (safe))
  1433.  
  1434.  
  1435.  
  1436.         (@InstallASL)
  1437.         (run (cat "ram:delete " #ArchiveLocation #ASLArchiveName) (safe))
  1438.  
  1439.         (@InstallCommodities)
  1440.         (run (cat "ram:delete " #ArchiveLocation #CommoditiesArchiveName) (safe))
  1441.  
  1442.         (@InstallAmigaGuide)
  1443.         (run (cat "ram:delete " #ArchiveLocation #AmigaGuideArchiveName) (safe))
  1444.  
  1445.         (@InstallDiskfont)
  1446.         (run (cat "ram:delete " #ArchiveLocation #DiskfontArchiveName) (safe))
  1447.  
  1448.  
  1449. (complete 50)
  1450.  
  1451.         (@InstallFiles)
  1452.         (run (cat "ram:delete " #ArchiveLocation #FilesArchiveName) (safe))
  1453.  
  1454.         (@InstallSupplements)
  1455.         (run (cat "ram:delete " #ArchiveLocation #SupplementsArchiveName) (safe))
  1456.  
  1457.         (@InstallHarp)
  1458.         (run (cat "ram:delete " #ArchiveLocation #HarpArchiveName) (safe))
  1459.  
  1460.         (set #UnpackFile (cat #ArchiveLocation #PrinterArchiveName))
  1461.         (set #UnpackDest (cat #MainDisk ":Prefs/"))
  1462.         (@UnpackFiles)
  1463.             (run (cat "ram:delete " #ArchiveLocation #PrinterArchiveName) (safe))
  1464.  
  1465.         (set #UnpackFile (cat #ArchiveLocation #SoundArchiveName))
  1466.         (set #UnpackDest (cat #MainDisk ":Prefs/"))
  1467.         (@UnpackFiles)
  1468.             (run (cat "ram:delete " #ArchiveLocation #SoundArchiveName) (safe))
  1469.  
  1470.         ;// Install Catalogs
  1471.         (set #UnpackFile (cat #ArchiveLocation #CatalogsArchiveName))
  1472.         (set #UnpackDest #CatalogsDest)
  1473.         (@UnpackFiles)
  1474.             (run (cat "ram:delete " #ArchiveLocation #CatalogsArchiveName) (safe))
  1475.  
  1476.  
  1477.         ;## DISK SWAP to get rest of archives
  1478.     (set #FileSourceDisk #InstallDisk)
  1479.     (@GetDisk)
  1480.  
  1481.     ;// ... some archives...
  1482.     (copyfiles
  1483.             (source (cat #InstallDisk ":Archive"))
  1484.             (dest "OrgTemp:")
  1485.             (pattern ("(Organiser.lha|Disk1Info.lha|ProgramInfo.lha)"))
  1486.             (optional "force")
  1487.           (safe)
  1488.         )
  1489.  
  1490. (complete 60)
  1491.  
  1492.  
  1493.         ;## DISK SWAP back again to dearchive to disk
  1494.     (set #FileSourceDisk #MainDisk)
  1495.     (@GetDisk)
  1496.  
  1497.         (@InstallProg)
  1498.         (run (cat "ram:delete " #ArchiveLocation #ProgArchiveName) (safe))
  1499.  
  1500.     (set #UnpackFile (cat #ArchiveLocation #Disk1InfoArchiveName))
  1501.     (set #UnpackDest (cat #MainDisk ":"))
  1502.     (@UnpackFiles)
  1503.         (run (cat "ram:delete " #ArchiveLocation #Disk1InfoArchiveName) (safe))
  1504.  
  1505.     (set #UnpackFile (cat #ArchiveLocation #ProgramInfoArchiveName))
  1506.     (set #UnpackDest (cat #MainDisk ":"))
  1507.     (@UnpackFiles)
  1508.         (run (cat "ram:delete " #ArchiveLocation #ProgramInfoArchiveName) (safe))
  1509.  
  1510.         (tooltype
  1511.             (dest #OrgToolDest)
  1512.             (settooltype #HelpTool (cat #FilesDisk ":Help/Organiser.guide"))
  1513.         )
  1514.  
  1515.     )
  1516. )
  1517.  
  1518. ;------------------------------------------------------
  1519. ;// Create floppy disk 2
  1520. (procedure @CreateDisk2
  1521.  
  1522.  
  1523.     (
  1524.         (set #FileSourceDisk #InstallDisk)
  1525.         (@GetDisk)
  1526.         (copyfiles
  1527.                 (source (cat #InstallDisk ":Archive"))
  1528.                 (dest "OrgTemp:")
  1529.                 (pattern ("(Supp_Storage.lha|Themes.lha|Templates.lha|Help.lha|Disk2Info.lha)"))
  1530.                 (optional "force")
  1531.               (safe)
  1532.         )
  1533.  
  1534.         ;// Now create the second disk
  1535.     (message #BlankDiskWarning
  1536.         (help #FloppyWarningHelp)
  1537.     )
  1538.  
  1539. (complete 70)
  1540.  
  1541.       (set #FormatMainDisk #FilesDisk)
  1542.       (@Makedisk)
  1543.  
  1544.     (message (cat "\n" #FilesDisk #FormatCompleteMsg1 #FilesDisk #FormatCompleteMsg2))
  1545.  
  1546.     (set #FileSourceDisk #FilesDisk)
  1547.     (@GetDisk)
  1548.  
  1549.  
  1550.         ;// Create the drawers with icons.
  1551.     (makedir (cat #FilesDisk ":" #SuppStorageName) (infos))        ; make Supplements Storage drawer
  1552.     (makedir (cat #FilesDisk ":" #ThemesName) (infos))            ; make Themed diaries drawer
  1553.     (makedir (cat #FilesDisk ":" #TemplatesName) (infos))        ; make Templates drawer
  1554.     (makedir (cat #FilesDisk ":Help"))                            ; make Help drawer
  1555.  
  1556.  
  1557.  
  1558.     ;// Now copy all files from RAM to disk 2, then delete them.
  1559.     (set #FileSourceDisk #FilesDisk)
  1560.     (@GetDisk)
  1561.  
  1562.         (@InstallSuppStorage)
  1563.         (run (cat "ram:delete " #ArchiveLocation #SuppStorageArchiveName) (safe))
  1564.  
  1565. (complete 80)
  1566.  
  1567.  
  1568.         (@InstallHelp)
  1569.         (run (cat "ram:delete " #ArchiveLocation #HelpArchiveName) (safe))
  1570.  
  1571.         (@InstallThemes)
  1572.         (run (cat "ram:delete " #ArchiveLocation #ThemesArchiveName) (safe))
  1573.  
  1574.         (@InstallTemplates)
  1575.         (run (cat "ram:delete " #ArchiveLocation #TemplatesArchiveName) (safe))
  1576.  
  1577.     (set #UnpackFile (cat #ArchiveLocation #Disk2InfoArchiveName))
  1578.     (set #UnpackDest (cat #FilesDisk ":"))
  1579.     (@UnpackFiles)
  1580.         (run (cat "ram:delete " #ArchiveLocation #Disk2InfoArchiveName) (safe))
  1581.  
  1582.     )
  1583. )
  1584.  
  1585. ;------------------------------------------------------
  1586. ;// Install program files
  1587. (procedure @InstallProg
  1588.     (
  1589.       (working #WorkingMsg)
  1590.     (set #UnpackFile (cat #ArchiveLocation #ProgArchiveName))
  1591.     (set #UnpackDest #ProgDest)
  1592.     (@UnpackFiles)
  1593.   )
  1594. )
  1595.  
  1596. ;------------------------------------------------------
  1597. ;// Install Help files
  1598. (procedure @InstallHelp
  1599.     (
  1600.       (working #WorkingMsg)
  1601.     (set #UnpackFile (cat #ArchiveLocation #HelpArchiveName))
  1602.     (set #UnpackDest #HelpDest)
  1603.     (@UnpackFiles)
  1604.   )
  1605. )
  1606.  
  1607. ;------------------------------------------------------
  1608. ;// Install Supplements Storage
  1609. (procedure @InstallSuppStorage
  1610.     (
  1611.         (working #WorkingMsg)
  1612.     (set #UnpackFile (cat #ArchiveLocation #SuppStorageArchiveName))
  1613.     (set #UnpackDest #SuppStorageDest)
  1614.     (@UnpackFiles)
  1615.     )
  1616. )
  1617.  
  1618. ;------------------------------------------------------
  1619. ;// Install Themes
  1620. (procedure @InstallThemes
  1621.     (
  1622.         (working #WorkingMsg)
  1623.     (set #UnpackFile (cat #ArchiveLocation #ThemesArchiveName))
  1624.     (set #UnpackDest #ThemesDest)
  1625.     (@UnpackFiles)
  1626.     )
  1627. )
  1628.  
  1629. ;------------------------------------------------------
  1630. ;// Install Templates
  1631. (procedure @InstallTemplates
  1632.     (
  1633.         (working #WorkingMsg)
  1634.     (set #UnpackFile (cat #ArchiveLocation #TemplatesArchiveName))
  1635.     (set #UnpackDest #TemplatesDest)
  1636.     (@UnpackFiles)
  1637.     )
  1638. )
  1639.  
  1640.  
  1641. ;------------------------------------------------------
  1642. ;// Install Files
  1643. (procedure @InstallFiles
  1644.     (
  1645.         (working #WorkingMsg)
  1646.     (set #UnpackFile (cat #ArchiveLocation #FilesArchiveName))
  1647.     (set #UnpackDest #FilesDest)
  1648.     (@UnpackFiles)
  1649.     )
  1650. )
  1651.  
  1652. ;------------------------------------------------------
  1653. ;// Install Supplements
  1654. (procedure @InstallSupplements
  1655.     (
  1656.         (working #WorkingMsg)
  1657.     (set #UnpackFile (cat #ArchiveLocation #SupplementsArchiveName))
  1658.     (set #UnpackDest #SupplementsDest)
  1659.     (@UnpackFiles)
  1660.     )
  1661. )
  1662.  
  1663. ;------------------------------------------------------
  1664. ;// Install Harp sample
  1665. (procedure @InstallHarp
  1666.     (
  1667.         (working #WorkingMsg)
  1668.     (set #UnpackFile (cat #ArchiveLocation #HarpArchiveName))
  1669.     (set #UnpackDest #SamplesDest)
  1670.     (@UnpackFiles)
  1671.     )
  1672. )
  1673.  
  1674.  
  1675. ;------------------------------------------------------
  1676. ;// Routine to install printer and fonts
  1677. (procedure @AddNewPrinter
  1678.     (
  1679.     (set #FileSourceDisk #InstallDisk)
  1680.     (@GetDisk)
  1681.  
  1682.     ;// Delete all in OrgTemp: first...
  1683.         (run (cat "ram:delete OrgTemp:#?" ) (safe))
  1684.     (set #ChosenDriver "Generic")
  1685.     (set #DriverSource (cat #InstallDisk ":Drivers"))
  1686.         (if (= #DestinationType "Floppy")
  1687.         (
  1688.             (set #DriverDest (cat #MainDisk ":Devs/Printers"))
  1689.           )
  1690.           (
  1691.             (set #DriverDest "DEVS:Printers")
  1692.                 (set #CheckGeneric (cat #DriverDest "/" #ChosenDriver))
  1693.                 (if (exists #CheckGeneric)
  1694.                   (
  1695.                     (protect #CheckGeneric "+r+w+e+d")
  1696.                   )
  1697.                 )
  1698.           )
  1699.         )
  1700.  
  1701.     ;// Select printer (or driver) from list...
  1702.     (working #WorkingMsg)
  1703.     (set #SelectPrt
  1704.       (cat "OrgUtils:select OrgUtils:OrgPrinterList")
  1705.     )
  1706.     (run #SelectPrt (safe))
  1707.     (set #ChosenDriver (getenv "wwDriver"))
  1708.     (working #WorkingMsg)
  1709.  
  1710.     ;// driver chosen so copy it to ram...
  1711.     (copyfiles
  1712.       (source #DriverSource)
  1713.       (dest #RamTempFile)
  1714.       (pattern #ChosenDriver)
  1715.       (optional "force")
  1716.       (nogauge)
  1717.     )
  1718.  
  1719.     ;// Now decompress Driver 'ChosenDriver' to destination '#RamTempFile'...
  1720.     (set #UnpackFile (tackon #RamTempFile #ChosenDriver))
  1721.     (set #UnpackDest "OrgTemp:")
  1722.     (@UnpackFiles)
  1723.     (delete #UnpackFile)
  1724.  
  1725.     ;// get full uncompressed driver name...
  1726.     (run "c:List " #RamTempFile " LFORMAT %s >ENV:wwDriver")
  1727.     (set Driver (getenv "wwDriver"))
  1728.     (set DriverLen (strlen Driver))
  1729.     (set DriverLen (- DriverLen 1))
  1730.     (set #ChosenDriver
  1731.       (substr Driver 0 DriverLen)
  1732.     )
  1733.     ;// finally, copy driver to driver destination...
  1734.         (if (= #DestinationType "Floppy")
  1735.         (
  1736.             (set #FileSourceDisk #MainDisk)
  1737.             (@GetDisk)
  1738.         )
  1739.     )
  1740.     (copyfiles
  1741.       (source #RamTempFile)
  1742.       (dest #DriverDest)
  1743.       (pattern #ChosenDriver)
  1744.       (optional "force")
  1745.     )
  1746.   )
  1747. )
  1748.  
  1749. ;------------------------------------------------------
  1750. ;// Delete any files from Ram and temporary Ram Drawer
  1751. (procedure @CleanUp
  1752.     (
  1753.     (working #WorkingMsg)
  1754.     (makeassign "OrgTemp" (safe))
  1755.         (if (exists #RamTempFile)
  1756.         (
  1757.                 (set DeleteDrawer (cat "ram:delete " #RamTempFile " all force"))
  1758.                 (Run DeleteDrawer)
  1759.             )
  1760.         )
  1761.     (makeassign "OrgUtils" (safe))
  1762.         (if (exists #RamUtils)
  1763.         (
  1764.                 (set DeleteDrawer (cat "ram:delete " #RamUtils " all force"))
  1765.                 (Run DeleteDrawer)
  1766.             )
  1767.         )
  1768.       (delete "Ram:delete"
  1769.           (optional "force")
  1770.       )
  1771.     )
  1772. )
  1773.  
  1774. ;------------------------------------------------------
  1775. ; ### Main
  1776. (complete 0)
  1777. (welcome)
  1778. (complete 5)
  1779. (@InitialChecks) ;// Copies relevent files to ram also
  1780. (@CheckHDorFloppy)
  1781.  
  1782. (complete 10)
  1783.  
  1784. (if (= #DestinationType "Hard")
  1785.     (
  1786.         ;// HD
  1787.  
  1788.     ; Install to Hard-disk
  1789.     (if (= #FullPath (cat #InstallDisk ":"))
  1790.         (Abort #HDBootedFromFloppy)
  1791.     )
  1792.  
  1793.  
  1794.       (set #ArchiveLocation (cat #InstallDisk ":Archive/"))
  1795.     (set #FileSourceDisk #InstallDisk)
  1796.     (@GetDisk)
  1797.     (@SetUpHDProgDests)
  1798.  
  1799.  
  1800.     ;## if on Hard disk see if there's a Locale:Countries drawer
  1801.  
  1802.        (if (not (exists "Sys:Locale"))
  1803.         (
  1804.             (makedir "Sys:Locale" (infos))
  1805.  
  1806.             (startup #ProgName
  1807.                 (prompt #AskLocaleMsg)
  1808.                 (help #AskLocaleHelp)
  1809.                 (command #AskLocaleCmd)
  1810.             )
  1811.  
  1812.                (run ("Assign LOCALE: SYS:Locale"))        ; Set Assign now
  1813.  
  1814.  
  1815.             (copyfiles
  1816.                 (source (cat #InstallName ":Locale"))
  1817.                 (dest "Sys:Locale/")
  1818.                 (all)
  1819.                 (optional "force")
  1820.             )
  1821.         )
  1822.     )
  1823.  
  1824.  
  1825.         (@CheckASL)
  1826.         (@CheckCommodities)
  1827.         (@CheckLocale)
  1828.         (@CheckParse)
  1829.         (@CheckDiskFont)
  1830.         (@CheckAmigaGuide)
  1831.  
  1832.  
  1833.         (@FindHDDest)
  1834.         (@CreateDrawers)
  1835.     (@SetUpHDProgDests)
  1836.     (set @default-dest #DestDrawer)
  1837. (complete 20)
  1838.         (@DearchiveScreenFonts)
  1839.         (@DearchiveEnv-Archive)
  1840.         (@DearchiveEnv)
  1841. (complete 30)
  1842.         (@InstallProg)
  1843.         (@InstallSupplements)
  1844.  
  1845.         (if (not (exists "Sys:Prefs/Sound"))
  1846.             (
  1847.                   (working #WorkingMsg)
  1848.                 (set #UnpackFile (cat #ArchiveLocation #SoundArchiveName))
  1849.                 (set #UnpackDest "Sys:Prefs/")
  1850.                 (@UnpackFiles)
  1851.             )
  1852.         )
  1853. (complete 40)
  1854.         (@InstallSuppStorage)
  1855. (complete 50)
  1856.  
  1857.         (@InstallThemes)
  1858.  
  1859.         (if (not (exists (cat #SamplesDest "Harp")))
  1860.             (
  1861.                 (@InstallHarp)
  1862.             )
  1863.         )
  1864. (complete 60)
  1865.  
  1866.         ;// Install Catalogs
  1867.         (set #UnpackFile (cat #ArchiveLocation #CatalogsArchiveName))
  1868.         (set #UnpackDest (cat #HDCatalogsDest "/"))
  1869.         (@UnpackFiles)
  1870.  
  1871.  
  1872.         (@InstallFiles)
  1873. (complete 70)
  1874.         (@InstallTemplates)
  1875.         (@InstallHelp)
  1876.  
  1877.  
  1878.     (set #UnpackFile (cat #ArchiveLocation #DrawerInfoArchiveName))
  1879.     (set #UnpackDest (cat #ProgDest "/"))
  1880.     (@UnpackFiles)
  1881.  
  1882. (complete 80)
  1883.  
  1884.     (set #UnpackFile (cat #ArchiveLocation #HDInfoArchiveName))
  1885.     (set #UnpackDest #ProgDest)
  1886.     (@UnpackFiles)
  1887.  
  1888.     (set #UnpackFile (cat #ArchiveLocation #ProgramInfoArchiveName))
  1889.     (set #UnpackDest #ProgDest)
  1890.     (@UnpackFiles)
  1891.  
  1892.  
  1893.            (
  1894.             ;set default tool type for all Themed Diaries
  1895.             (foreach #ThemesDest "#?"
  1896.                 (
  1897.                     (tooltype
  1898.                         (dest (cat #ThemesDest @each-name))
  1899.                         (setdefaulttool (cat #ProgDest #ProgName))
  1900.                     )
  1901.                 )
  1902.             )
  1903.         )
  1904.  
  1905.  
  1906.     )
  1907.     (
  1908.         ;// Floppy
  1909.       (set #ArchiveLocation "OrgTemp:")
  1910.     (@SetUpFloppyProgDests)
  1911.         (if (>= @user-level 2) ;expert only
  1912.             (
  1913.                 (set #FormatChoice
  1914.                     (askchoice
  1915.                         (prompt #FormatChoiceprompt)
  1916.                         (choices #FormatChoicemsg1 #FormatChoicemsg2)
  1917.                         (help #FormatChoice-help)
  1918.                         (default 0)
  1919.                     )
  1920.                 )
  1921.             )
  1922.         )
  1923.  
  1924.         ;// if expert then check user wants to create disk 1
  1925.         (if (>= @user-level 2)
  1926.             (
  1927.                 (set #CreateDiskChoice
  1928.                     (askbool
  1929.                         (prompt (cat #CreateDiskPrompt1 #MainDisk #CreateDiskPrompt2))
  1930.                         (choices #ChoiceContinue #ChoiceSkip)
  1931.                         (help #CreateDiskHelp)
  1932.                         (default 1)
  1933.                     )
  1934.                 )
  1935.             )
  1936.           (set #CreateDiskChoice 1)
  1937.         )
  1938.  
  1939.     (if (= @user-level 0)
  1940.       (
  1941.         (user 2)
  1942.         (set #UserNovice 1)
  1943.       )
  1944.     )
  1945.  
  1946.     (if (= #CreateDiskChoice 1)
  1947.         (@CreateDisk1)
  1948.     )
  1949.  
  1950.     (if (= #UserNovice 1)
  1951.       (
  1952.         (user 0)
  1953.       )
  1954.     )
  1955.  
  1956.  
  1957.         ;// if expert then check user wants to create disk 2
  1958.         (if (>= @user-level 2)
  1959.             (
  1960.                 (set #CreateDiskChoice
  1961.                     (askbool
  1962.                         (prompt (cat #CreateDiskPrompt1 #FilesDisk #CreateDiskPrompt2))
  1963.                         (choices #ChoiceContinue #ChoiceSkip)
  1964.                         (help #CreateFilesDiskHelp)
  1965.                         (default 1)
  1966.                     )
  1967.                 )
  1968.             )
  1969.           (set #CreateDiskChoice 1)
  1970.         )
  1971.  
  1972.     (if (= @user-level 0)
  1973.       (
  1974.         (user 2)
  1975.         (set #UserNovice 1)
  1976.       )
  1977.     )
  1978.  
  1979.     (if (= #CreateDiskChoice 1)
  1980.         (@CreateDisk2)
  1981.     )
  1982.  
  1983.     (if (= #UserNovice 1)
  1984.       (user 0)
  1985.     )
  1986.  
  1987.     (set @default-dest "")
  1988.     )
  1989. )
  1990.  
  1991. (complete 90)
  1992.  
  1993.     (set #InstallPrinter 1)
  1994.  
  1995.     (if (< #UserNovice 1) ; Intermediate or Expert only
  1996.         (
  1997.             (set #InstallPrinter
  1998.                 (askbool
  1999.                     (prompt #PrinterChoicePrompt)
  2000.                     (choices #PrinterChoicemsg1 #PrinterChoicemsg2)
  2001.                     (help #PrinterChoice-help)
  2002.                     (default 0)
  2003.                 )
  2004.             )
  2005.         )
  2006.     )
  2007.  
  2008. (if (= #InstallPrinter 1)
  2009.     (
  2010.         (@AddNewPrinter)
  2011.     )
  2012. )
  2013.  
  2014. (@CleanUp)
  2015. (complete 100)
  2016. (if (= #DestinationType "Hard")
  2017.     (exit)
  2018.     (exit #FloppyFinishedMsg)
  2019. )
  2020.